#include<cstdio>
#include<set>
#include<cstring>
#include<cctype>
using namespace std;
const int maxn=50010;
int st[maxn],top=0;
set<int>s;
set<int>::iterator itr;
int main()
{
	int n,m,l,r,pos,ans;
	char ch;
	scanf("%d",&n,&m);
	s.insert(0);s.insert(n+1);
	for(int i=1;i<=m;i++)
	{
	//	char ch;
		
	//	scanf("%c%c",&ch,&ch);
		while(!isalpha(ch=getchar()));
	/*	if(ch=='D')
		{
			scanf("%d",&x);
			s.insert(x);
			top++;
			st[top]=x;
			continue;
		}
		if(ch=='Q')
		{
			scanf("%d",&x);
			it1=s.lower_bound(x);
			int a=*it1;
			it1--;
			if(a==x)printf("0\n");
			else printf("%d\n",a-*it1-1);
			continue;
		}
		if(ch=='R')
		{
			int x=st[top];
			top--;
			//set<int>::iterator it=s.find(x);
			s.erase(x);
		}*/
		switch(ch)
		{
            case 'R': s.erase(st[--top]);break;
            case 'D': scanf("%d",&pos);s.insert(st[top++]=pos);break;
            case 'Q': scanf("%d",&pos);
                      itr=s.upper_bound(pos);
					   r=*itr;
					   l=*--itr;
                      if(l==pos)
                         ans=0;
                      else ans=r-l-1;
                      printf("%d\n",ans);break;
        }

	}
	return 0;
}






